1. Field of the Invention
The disclosed embodiments of the present invention relate to a message-passing algorithm based decoding scheme, and more particularly, to a method for controlling a message-passing algorithm based decoding operation by selectively adjusting a decoding operation of a next iteration according to statistics data of syndromes of executed iterations and related control apparatus thereof.
2. Description of the Prior Art
Communication of information between computers and other electronic devices can be implemented using any of a variety of different standards and technologies. Channel coding and error correction techniques may be used to reduce errors in received signals introduced from distortion and other disturbances. Such coding and error correction may be implemented using an encoder and a decoder at the ends of the transmission channel.
For example, any decoding algorithm for low-density parity check (LDPC) codes may be used in the receiving end to decode the received codeword (i.e., received channel values). In general, iterative decoders are often used to converge on a correct decoded value. In one implementation, LDPC decoding is performed in the receiving end using a soft-decision, message-passing algorithm (MPA). The received bits (e.g., channel values) are treated as variables each representing the probability of the value being a “0” or a “1”, and the variables are represented in the decoding algorithm as log likelihood ratios (LLRs). The message-passing algorithm passes messages (e.g., LLRs) from the variable nodes to the check nodes, calculates the syndrome of the current iteration, passes messages (e.g., LLRs) from the check nodes to the variable nodes, and iterates in this same way until a convergence is reached (e.g., check bits of the syndrome are all 0's).
However, one of the problems inherent to LDPC codes is the presence of trapping set(s). A trapping set is the set of bits that cannot be decoded to the correct values after any given number of iterations. Regarding an LDPC decoder with high signal-to-noise (SNR) additive white Gaussian noise (AWGN), an error type is a small trapping set. In general, the error bit number of the received bits is usually small. However, if the errors are located at some specific variable nodes, they would feed back wrong reliability values and cause a trapping set. To put it simply, when decoding a received codeword, an LDPC decoder may encounter one or more trapping sets that prevent the decoder from properly decoding the received codeword.
Thus, there is a need for an innovative MPA based decoder design which is capable of solving decoding errors resulted from trapping set(s).